<?php
    namespace Core\Generique;
    /**
     * Une Personne est un humain qui utilise ou que ses informations sont renseignées dans l'application
     *
     * @author mpetrini
     */
    abstract class Personne extends \Core\Generique\Modifiable {
        /**
        * @var string $prenom 
        */
        protected $prenom;
        /**
        * @var string $nom 
        */
        protected $nom;
        /**
        * @var boolean $valide 
        */
        protected $valide;
        
        /**
        * Constructeur complet
        * 
        * @param int $id
        * @param string $prenom
        * @param string $nom
        * @param boolean $valide
        * @param mixed $dateAjout
        * @param mixed $dateModification
        *  
        * @return void 
        */
        public function __construct($id, $prenom, $nom, $valide, $dateAjout, $dateModification) {
            parent::__construct($id, $dateAjout, $dateModification);
            $this->setPrenom($prenom);
            $this->setNom($nom);
            $this->setValide($valide);
        }
        
        //GETTERS ET SETTERS
        public function getPrenom() {return $this->prenom;}
        public function setPrenom($prenom) {$this->prenom=$prenom;}
        public function getNom() {return $this->nom;}
        public function setNom($nom) {$this->nom=$nom;}
        public function getValide() {return $this->valide;}
        public function setValide($valide) {$this->valide=(boolean)intval($valide);}
    }
?>
